/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package pruebas;

import Dominio.Entidades.ArchivoGrabacion;
import Dominio.Entidades.ArchivoLectura;
import Dominio.Fachada.Escalera;
import java.util.GregorianCalendar;
import java.util.Scanner;
import javax.print.DocFlavor;

/**
 *
 * @author 146122
 */
public class Programa {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {


        boolean termine = false;
        boolean termine2 = false;
        int cantidad = 0;
        ArchivoLectura lectura = new ArchivoLectura("archivo");
        ArchivoLectura lectura2 = new ArchivoLectura("archivo2");
        ArchivoGrabacion graba = new ArchivoGrabacion("Garchivo2");
        ArchivoGrabacion graba2 = new ArchivoGrabacion("Garchivo2");
        lectura.hayMasLineas();
        lectura2.hayMasLineas();
        while (!termine && !termine2) {
            int indice = Integer.parseInt(lectura.linea().split(" ")[0]);
            int indice2 = Integer.parseInt(lectura2.linea().split(" ")[0]);
            if (indice < indice2) {
                graba.grabarLinea(lectura.linea());
                termine = lectura.hayMasLineas();
            } else if (indice > indice2) {
                graba.grabarLinea(lectura2.linea());
                termine2 = lectura2.hayMasLineas();
            } else {
                graba.grabarLinea(lectura.linea());
                termine = lectura.hayMasLineas();
                termine2 = lectura2.hayMasLineas();
            }
        }
        while (!termine) {
                graba.grabarLinea(lectura.linea());
                termine = lectura.hayMasLineas();
            }
        while (!termine2) {
                graba.grabarLinea(lectura2.linea());
                termine2 = lectura2.hayMasLineas();
            }
        
        lectura.cerrar();
        lectura2.cerrar();
        graba.cerrar();
        graba2.cerrar();

        compararArchivos();

        lecturaPorFranjas();


    }

    private static void lecturaPorFranjas() {
        Scanner texto = new Scanner(System.in);
        boolean termine = false;
        do {


            System.out.println("Ingres la cantidad de lineas a leer: ");
            int cantidad = texto.nextInt();
            ArchivoLectura lectura = new ArchivoLectura("archivo");
            while (lectura.hayMasLineas() && cantidad != 0) {
                cantidad--;
                System.out.println(lectura.linea());
            }
            termine = (lectura.linea() == null);
            lectura.cerrar();
        } while (!termine);
    }

    private static void compararArchivos() {
        boolean termine = false;
        int cantidad = 0;
        ArchivoLectura lectura = new ArchivoLectura("archivo");
        ArchivoLectura lectura2 = new ArchivoLectura("archivo2");
        while (lectura.hayMasLineas() && lectura2.hayMasLineas() && !termine) {
            cantidad++;
            termine = (lectura.linea().equals(lectura2.linea()));
            System.out.println(String.format("En la linea %s los arvichos son diferentes", cantidad));
            System.out.println("Arvhivo Uno:" + lectura.linea());
            System.out.println("Arvhivo Dos:" + lectura2.linea());
        }
    }
}
